#include <stdlib.h>

void userBinaryOperator(void *input1andOutput, void *input2);

#define ubop(x1,x2) userBinaryOperator( (void *) (x1), (void *) (x2) );

void genericScan(void *X, unsigned int n, size_t l)
{
	unsigned int i;
	char *c = (char *)X;
	
	for (i=1;i<n;i++)	
		ubop( c+i*l,  c+l*(i-1)); 
}


